package com.jeffse.light.stream.core.data.context;

import com.jeffse.light.stream.core.data.descriptor.operatorDescriptor.OperatorDescriptor;
import com.jeffse.light.stream.core.pojo.OutTag;

import java.io.Serializable;

public interface ProcessContext<O> extends Serializable {
    /**
     * 输出数据
     * @param element
     * @throws Exception
     */

    public  void collect(O element, OutTag outTag) throws Exception;

    public  void collect(O element) throws Exception;

    public void setCtx(Context ctx);

    public Context getCtx();

    public void setOutTag(OutTag outTag);

    public OutTag getOutTag();

    public void setNextOperatorDescriptor(OperatorDescriptor operatorDescriptor);

    public OperatorDescriptor getNextOperatorDescriptor();

}
